Presenting profile card in conversation graphical user interface

ABSTRACT

A computing device can receive at least a first post in association with a first account, a second post in association with the first account, the second post being associated with the first post, a third post in association with a second account, the third post being associated with the first post, a fourth post in association with the second account, the fourth post being associated with the first post, and a fifth post in association with a third account, the fifth post being associated with the first post, determine that the first account and the second account are most relevant to a conversation, and based on determining that the first account and the second account are most relevant to the conversation, present the first post, the second post, the third post, and the fourth post without presenting the fifth post.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application is a divisional of, and claims priority to, U.S. patentapplication Ser. No. 16/841,438, filed on Apr. 6, 2020, entitled“DETERMINING MOST RELEVANT ACCOUNTS IN A CONVERSATION”, which claimspriority to U.S. Patent Application No. 62/829,611, filed on Apr. 4,2019, entitled “PRESENTING PROFILE CARD IN CONVERSATION GRAPHICAL USERINTERFACE”, the disclosures of which are incorporated by referenceherein in their entirety.

TECHNICAL FIELD

This description relates to graphical user interfaces.

SUMMARY

According to an example, a non-transitory computer-readable storagemedium comprising instructions stored thereon. When executed by at leastone processor, the instructions can cause a computing device to receiveat least a first post in association with a first account, a second postin association with the first account, the second post being associatedwith the first post, a third post in association with a second account,the third post being associated with the first post, a fourth post inassociation with the second account, the fourth post being associatedwith the first post, and a fifth post in association with a thirdaccount, the fifth post being associated with the first post,determining that the first account and the second account are mostrelevant to a conversation, the conversation including at least thefirst post, the second post, the third post, the fourth post, and thefifth post, and based on determining that the first account and thesecond account are most relevant to the conversation, present the firstpost, the second post, the third post, and the fourth post withoutpresenting the fifth post.

According to an example, a method performed by a computing device caninclude receiving at least a first post in association with a firstaccount, a second post in association with the first account, the secondpost being associated with the first post, a third post in associationwith a second account, the third post being associated with the firstpost, a fourth post in association with the second account, the fourthpost being associated with the first post, and a fifth post inassociation with a third account, the fifth post being associated withthe first post, determining that the first account and the secondaccount are most relevant to a conversation, the conversation includingat least the first post, the second post, the third post, the fourthpost, and the fifth post, and based on determining that the firstaccount and the second account are most relevant to the conversation,presenting the first post, the second post, the third post, and thefourth post without presenting the fifth post.

According to an example, a non-transitory computer-readable storagemedium can include instructions stored thereon. When executed by atleast one processor, the instructions can cause a computing device topresent, within a conversation view, a first post and at least one otherpost, the first post including an identifier of an author of the firstpost and content provided by the author of the first post, receive afirst selection of the first post within the conversation view, inresponse to receiving the first selection of the first post within theconversation view, present the first post within a selected state, atleast one of the identifier of the author or the content being presentedlarger in the selected state than in the conversation view, receive asecond selection of the first post within the selected state, and inresponse to receiving the second selection of the first post within theselected state, present a profile card associated with the author, theprofile card including the identifier of the author and a description ofthe author.

The details of one or more implementations are set forth in theaccompa-nying drawings and the description below. Other features will beapparent from the description and drawings, and from the claims.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1A shows a smartphone with a display presenting a conversationgraphical user interface (GUI) according to an example implementation.

FIGS. 1B through 5D show the smartphone with the display presentingconversation GUIs according to example implementations.

FIG. 6 shows the smartphone with at least one processor, a memorydevice, and an antenna according to an example implementation.

FIG. 7 is a network diagram showing a server and client devicesaccording to an example implementation.

FIG. 8 is a block diagram showing the server according to an exampleimplementation.

FIG. 9 is a block diagram showing a client device according to anexample implementation.

FIG. 10 is a flowchart showing a method according to an exampleimplementation.

FIG. 11 is a flowchart showing a method according to another exampleimplementation.

DETAILED DESCRIPTION

Messaging applications can present messages from an original author andreplies. The replies can be from the original author or from otherusers.

FIG. 1A shows a smartphone 100 with a display 102 presenting aconversation graphical user interface (GUI) according to an exampleimplementation. The smartphone 100 is an example of a client deviceand/or computing device. The conversational GUI can present a message104 from the original author and a reply 106 to the original message106. The message 104 can be an example of a post 120A. The reply 106 canbe an example of a post 120C that is responsive to a preceding post120A, 120B.

The message 104 can be one of multiple posts 120A, 120B, 120C presentedby the display 102. The posts 120A, 120B, 120C can each include anavatar 122A, 122B, 122C. The avatars 122A, 122B, 122C can include imagesselected, generated, and/or uploaded by users and/or authors associatedwith respective accounts that created and/or uploaded the posts 120A,120B, 120B to a server 702 (described below).

The posts 120A, 120B, 120C can each include an identifier of an authorof the respective post 120A, 120B, 120C and/or account associated withthe post. The author can be a user who maintains (e.g., owns) theaccount associated with the post 120A, 120B, 120C, such as the accountthat was logged into the smartphone, and/or another client device, whenthe post 120A, 120B, 120C was generated and/or uploaded to the server702. The avatars 122A, 122B, 122C, which can be examples of identifiersof authors of the posts 120A, 120B, 120C, can either be unique ornon-unique identifiers of the authors of the respective posts 120A,120B, 120C.

The posts 120A, 120B, 120C can each include a handle 126A, 126B, 126C.The handles 126A, 126B, 126C can each include a string of charactersuniquely associated with the author and/or account that created and/oruploaded the post 120C to the server 702. The handles 126A, 126B, 126Ccan be examples of identifiers of authors of the posts 120A, 120B, 120C.In the example shown in FIG. 1A, the first post 120A, and/or root postin a conversation that includes the posts 120A, 120B, 120C, can includea name 124A of the author of the post 120A.

The posts 120A, 120B, 120C can include content created and/or uploadedby client devices, such as the smartphone, to the server 702 inassociation with the respective accounts and/or authors. The content caninclude text and/or image(s). In the example shown in FIG. 1A, thecontent of the post 120A includes text provided by the author of thepost 120A. In the example shown in FIG. 1A, the content of the post 120Bincludes text provided by the author of the post 120B. In the exampleshown in FIG. 1A, the content of the post 120C includes text 130provided by the author of the post 120A and an image 132 provided by theauthor of the post 120C.

A user may desire to learn more about an author of one of the posts120A, 120B, 120C, and/or to learn more about one of the posts 120A,120B, 120C. In an example implementation, a user can select one of theposts 120A, 120B, 120C. The user can select one of the posts by, forexample, providing input to a portion of the post 120A, 120B, 120C, suchas the content including text 130 and/or an image 132, such as bytapping on the portion of the post 120A, 120B, 120C, hovering a cursorover the portion of the post 120A, 120B, 120C and clicking on a mouse orother human interface device, or scrolling through the posts 120A, 120B,120C and selecting the chosen post 120A, 120B, 120C, as non-limitingexamples. The smartphone 100 can respond to the selection of the post120A, 120B, 120C by transitioning from the conversation view shown inFIG. 1A to presenting the selected post 120A, 120B, 120C in a selectedstate shown in FIG. 1B.

FIG. 1B shows the smartphone 100 with the display 102 presenting aconversation GUI according to an example implementation. Theconversation GUI can present an identity 108 of the author of the reply106. The identity 108 can include an avatar associated with the author,a name of the author, and/or a handle of the author. The avatar caninclude a picture of the author or an image selected by the author. Thehandle can include a username or other identifier of the author. A usercan click on the identity 108 to find out more information about theauthor of the reply 106.

The conversation GUI shown in FIG. 1B can be an example of a selectedstate presented by the smartphone in response to the user selecting thepost 120C in the conversation view shown in FIG. 1A. In the selectedstate shown in FIG. 1B, at least one of the identifier of the author ofthe post 120C, such as the avatar 122C, a name 124C of the author of thepost 120C, and/or the handle 126C, is presented larger, such asoccupying a larger share of the display 102, than in the conversationview shown in FIG. 1A.

In some examples, the selected state can present additional information144 about the post 120C that was not presented in the conversation view.In the example shown in FIG. 1B, the additional information 144 includesan explicit reference to the post 120B that the post 120C is replying toand/or responsive to, a time that the post 120C was generated and/oruploaded to the server 702, and/or a physical and/or geographicallocation from which the post 120C was generated and/or uploaded.

The smartphone 100 can present additional buttons in the selected stateshown in FIG. 1B not presented in the conversation view shown in FIG.1A. The smartphone 100 can present, for example, a reply button 136enabling the user to generate and/or upload a post that replies to thepost 120C, a repost button 138 to enable the user to repost the post120C on the current user's account, a like or love button 140 enablingthe user to indicate appreciation of the post 120C, and/or a sharebutton 142 enabling the user to share the post 120C via an alternativeelectronic communication media such as a text message or email.

The user may desire to learn more about the author of the post 120C. Thesmartphone 100 can respond to the user selecting the post 120C in theselected state shown in FIG. 1B by presenting a profile card associatedwith the author of the post 120C. The user can select the post 120C by,for example, providing input to a portion of the post 120C, such as anidentity 108 and/or identifier of the author such as the avatar 122C,name 124C, and/or handle 126C, such as by tapping on the portion of thepost 120C, hovering a cursor over the portion of the post 120C andclicking on a mouse or other human interface device, or scrollingthrough the posts 120A, 120B, 120C and selecting the chosen post 120C,as non-limiting examples. The smartphone 100 can respond to theselection of the post 120C by transitioning from the selected stateshown in FIG. 1B to presenting a profile card 110 shown in FIG. 1C.

FIG. 1C shows the smartphone 100 with the display 102 presenting aconversation GUI according to an example implementation. In thisexample, the user has clicked on the identity 108 shown in FIG. 1B. Thesmartphone 100 has responded to the user clicking on the identity bygenerating, and/or causing the display 102 to present or display, aprofile card 110. The profile card 110 presents more information thanthe identity 108. In the example shown in FIG. 1C, the profile card 110presents a background image 131, the avatar 122 in a larger form thanshown in the selected state of FIG. 1B, the author's name 124C, theauthor's handle 126C, a brief biography and/or description 150 of theauthor, a number of followers 152 of the author, a date 154 that theauthor joined the messaging application, and some names 156 of followersof the author.

In some examples, the smartphone 100 can return from presenting theprofile card 110 shown in FIG. 1C to presenting the selected state shownin FIG. 1B in response to receiving first return input from the user. Insome examples, the first return input can include input, such as tappingand/or clicking, on a portion of the display 102 that is outside theprofile card 110.

In some examples, the smartphone 100 can return from presenting theselected state shown in FIG. 1B to presenting the conversation viewshown in FIG. 1A in response to receiving second return input from theuser. In some examples, the first return input can include input, suchas tapping and/or clicking, on a portion of the display 102 thatpresents the content, such as the text 130 and/or image 132.

FIG. 2A shows the smartphone 100 with the display 102 presenting aconversation GUI according to an example implementation. In thisexample, the conversation GUI includes avatars 202A, 202B, 202C, 202D,202E, 202F as anchors marking levels of indentation of the message 104and replies 106A, 106B, 106C, 106D, 106E on the display 102.

FIG. 2B shows the smartphone 100 with the display 102 presenting aconversation GUI according to an example implementation. In thisexample, lines 210 show relationships between replies 106A, 106B, 106C,106D, 106E, indicating associations between replies 106A, 106B, 106C,106D, 106E.

FIG. 2C shows the smartphone 100 with the display 102 presenting aconversation GUI according to an example implementation. In thisexample, curved joints 220 between the lines 210 and the replies 106A,106B, 106C, 106D, 106E create a more fluid structure on the conversationGUI.

FIG. 2D shows the smartphone 100 with the display 102 presenting aconversation GUI according to an example implementation. In thisexample, the weight of the usernames 230 has been increased.

FIG. 2E shows the smartphone 100 with the display 102 presenting aconversation GUI according to an example implementation. In thisexample, dots 240 anchor the replies 106A, 106B, 106C, 106D, 106E. Thedots 240 can be colored to indicate associations with other replies106A, 106B, 106C, 106D, 106E.

FIG. 2F shows the smartphone 100 with the display 102 presenting aconversation GUI according to an example implementation. In thisexample, the joints 220A indicating associations between the replies106A, 106B, 106C, 106D, 106E are sloped.

FIG. 3A shows the smartphone 100 with the display 102 presenting aconversation GUI according to an example implementation. In thisexample, dots 310 can demarcate the replies 106A, 106B, 106C, 106D,106E. The dots 310 can be colored to indicate subsequent replies 106A,106B, 106C, 106D, 106E.

In some examples, a computing device, such as the server 702 describedbelow or client device 704 (of which the smartphone 100 is an example)described below, can receive multiple posts from multiple authors and/orassociated with multiple accounts. The computing device can determinewhich accounts are most relevant to the conversation. In some examples,the computing device can determine that two accounts are most relevantto the conversation. Based on determining which accounts are mostrelevant to the conversation, the computing device can present onlyposts associated with and/or generated by the most relevant accounts,and/or present posts associated with and/or generated by the mostrelevant accounts without presenting posts associated with otheraccounts. In some examples, the computing device can present only postsassociated with and/or generated by the most relevant accounts, and/orpresent posts associated with and/or generated by the most relevantaccounts without presenting posts associated with other accounts, bypresenting posts associated with other accounts only in response to aninput and/or request by the user to present posts associated with otheraccounts.

In an example implementation, the computing device can receive a firstpost, such as a post displayed as post 320A, in association with a firstaccount, a second post, such as a post displayed as post 320C, inassociated with the first account, a third post, such as a postdisplayed as post 320B, in association with a second account, a fourthpost, such as a post displayed as post 320E, in association with thesecond account, and a fifth post in association with a third account andwhich is not displayed in FIG. 3A. The second post, third post, fourthpost, and fifth post can be associated with the first post by being inreply to and/or responsive to the first post. The computing device candetermine that the first account and second account are most relevant toa conversation. The conversation, of which a portion is shown in FIG.3A, can include the first post, second post, third post, fourth post,and fifth post based on the second post, third post, fourth, post, andfifth post being associated with the first post. Based on determiningthat the first account and the second account are most relevant to theconversation, the computing device can present the first post, thesecond post, the third post, and the fourth post without presenting thefifth post.

In the example shown in FIG. 3A, the first posts 320A, 320B by each ofthe two most relevant accounts and/or authors, first author Kara andsecond author Jack, include avatars 322A, 322B. In some examples, theavatar 322A, 322B of each author is surrounded by a different color,such as the avatar 322A being surrounded by a first color and the avatar322B being surrounded by a second color, the second color beingdifferent than the first color. Subsequent posts 320C, 320D, 320E,and/or posts 320A, 320D, 320E that are below and/or after the firstposts 320A, 320B, can include dots 310C, 310D, 310E with the twodifferent colors instead of avatars to identify the authors of and/oraccounts associated with the posts. In this example, the dot 310Cincluded in the post 320C includes the first color to indicate that thepost 320C is associated with the first author Kara, the dot 310Dincluded in the post 320D includes the first color to indicate that thepost 320D is associated with the first author Kara, and the dot 310Eincluded in the post 320E includes the second color to indicate that thepost 320E is associated with the second author Jack.

In the example shown in FIG. 3A, the text 330A, 330B, 330D included inthe posts 320A, 320B, 320D includes identifiers 350A, 350B, 350Didentifying the second account and/or second author Jack. The text 330A,330B, 330D can include the identifiers 350A, 350B, 350D based onmessages received by the server 702 that include the posts including theidentifiers of authors and/or accounts other than the authors and/oraccounts that generated the message and/or post. In some examples, thecomputing device can determine that the two authors and/or accounts Karaand Jack are the most relevant authors and/or accounts in theconversation based on the first post 320A in the conversation and/orroot post 320A in the conversation, which was generated by the firstauthor and/or account, including the identifier 350A identifying thesecond account and/or second author. In some examples, the computingdevice can determine that the two authors and/or accounts Kara and Jackare the most relevant authors and/or accounts in the conversation basedon a threshold number and/or threshold proportion of post by the firstauthor and/or account Kara identifying the second author and/or accountJack. In some examples, the computing device can determine that the twoauthors and/or accounts Kara and Jack are the most relevant authorsand/or accounts in the conversation based on a threshold number and/orthreshold proportion of posts by the first and second authors and/oraccounts identifying the other author and/or account, such as posts bythe first author and/or account identifying the second author and/oraccount and posts by the second author and/or account identifying thefirst author and/or account. In some examples, the computing device candetermine that the two authors and/or accounts Kara and Jack are themost relevant authors and/or accounts in the conversation based on athreshold number and/or threshold proportion of posts included in theconversation identifying either the first author or the second author.

In some examples, the computing device can determine that the twoauthors and/or accounts Kara and Jack are the most relevant authorsand/or accounts in the conversation based on a threshold number and/orthreshold proportion of posts included in the conversation beingassociated with either the first author and/or account or the secondauthor and/or account. In some examples, the computing device candetermine that the two authors and/or accounts Kara and Jack are themost relevant authors and/or accounts in the conversation based on postsincluded in the conversation being by one of the two most relevantauthors and/or accounts and responsive to and/or replying to posts bythe other of the two most relevant authors and/or accounts, such as athreshold number and/or threshold proportion of all the posts includedin the conversation being either posts by the first author and/oraccount replying to and/or responsive to posts by the second authorand/or account, or posts by the second author and/or account replying toand/or responsive to posts by the first author and/or account.

In some examples, the computing device can present prompts, such asprompts 352A, 352B, 353C, 352D to display additional posts. Thecomputing device can respond to input to the prompts 352A, 352B, 352C,352D, such as taps and/or clicks on the prompts 352A, 352B, 352C, 352Dby displaying additional posts, such as posts by authors and/or accountsother than the first author and/or account and second author and/oraccount that the computing device determined were most relevant to theconversation, such as presenting and/or displaying the fifth post byand/or associated with the third author and/or account.

FIG. 3B shows the smartphone 100 with the display 102 presenting aconversation GUI according to an example implementation. In thisexample, branches 320 can indicate hidden replies. The conversation GUIcan respond to a user clicking on the branches 320, and/or text (“Showreplies”) adjacent to the text, by presenting the hidden replies. FIG.3B shows similar features as FIG. 3A, with avatars 322C, 322D, 322Eincluded in the posts 320C, 320D, 320E instead of dots 310C, 320D, 320E.

FIG. 4A shows the smartphone 100 with the display 102 presenting aconversation GUI according to an example implementation. In thisexample, dots 410 and lines 420 indicate relationships between replies106A, 106B, 106C, 106D, 106E.

FIG. 4B shows the smartphone 100 with the display 102 presenting aconversation GUI according to an example implementation. In thisexample, an image 430 is included in one of the replies 106A, 106B,106C, 106D, 106E.

FIG. 4C shows the smartphone 100 with the display 102 presenting aconversation GUI according to an example implementation. In thisexample, the conversation GUI includes avatars 440 instead of dots 410(shown in FIG. 4A) at indentation levels showing relationships betweenreplies 106A, 106B, 106C, 106D, 106E.

FIG. 4D shows the smartphone 100 with the display 102 presenting aconversation GUI according to an example implementation. In thisexample, curved joints 450 indicate associations between the replies106A, 106B, 106C, 106D, 106E.

FIG. 4E shows the smartphone 100 with the display 102 presenting aconversation GUI according to an example implementation. In thisexample, arrows 460 indicate associations between the replies 106A,106B, 106C, 106D, 106E.

FIG. 4F shows the smartphone 100 with the display 102 presenting aconversation GUI according to an example implementation. In thisexample, right angles 460 indicate associations between the replies106A, 106B, 106C, 106D, 106E.

FIG. 5A shows the smartphone 100 with the display 102 presenting aconversation GUI according to an example implementation. In thisexample, the avatars 502A, 502B, message 506A, and reply 506B to themessage 506A can be left-aligned. The indentation level of theleft-alignment can indicate associations between messages 506A andreplies 506B. The conversation GUI can also present handles 504A, 504Badjacent to the avatars 502A, 502B.

FIG. 5B shows the smartphone 100 with the display 102 presenting aconversation GUI according to an example implementation. In thisexample, the avatar 502B (shown in FIG. 5A) is not included in the reply506B, condensing the appearance of the handle 504B and reply 506B.

FIG. 5C shows the smartphone 100 with the display 102 presenting aconversation GUI according to an example implementation. In thisexample, the conversation GUI presents vertical lines 510 to indicateassociations between replies. Also in this example, the conversation GUIpresents horizontal lines to distinguish replies from each other.

FIG. 5D shows the smartphone 100 with the display 102 presenting aconversation GUI according to an example implementation. In thisexample, the conversation GUI presents a badge 530 overlaying, and/oradjacent to, the avatar presented with a reply 506C that has the sameauthor as the original message 506A. The badge 530 can indicate animportant message and/or author in the conversation GUI.

FIG. 6 shows the smartphone 100 with at least one processor, a memorydevice, and an antenna according to an example implementation. Thesmartphone 100 may include, for example, one or two RF (radio frequency)or wireless transceivers 602A, 602B, where each wireless transceiverincludes a transmitter to transmit signals and a receiver to receivesignals. The smartphone 100 also includes a processor 604 to executeinstructions or software and control transmission and receptions ofsignals, and a memory device 606 to store data and/or instructions.

Processor 604 may also make decisions or determinations, generateframes, packets or messages for transmission, decode received frames ormessages for further processing, respond to input from the user such asinto the display 102, generate the conversation GUI, instruct thedisplay 102 to present information and/or icons as described herein, andperform other tasks or functions described herein. Processor 604, whichmay be a baseband processor, for example, may generate messages,packets, frames or other signals for transmission via wirelesstransceiver 602. Processor 604 may control transmission of signals ormessages over a wireless network, and may receive signals or messages,etc., via a wireless network (e.g., after being down-converted bywireless transceiver 602, for example). Processor 604 may beprogrammable and capable of executing software or other instructionsstored in memory or on other computer media to perform the variousmethods, tasks, and/or functions described above, such as one or more ofthe methods, tasks, and/or functions described above. Processor 1204 maybe (or may include), for example, hardware, programmable logic, aprogrammable processor that executes software or firmware, and/or anycombination of these. Using other terminology, processor 604 andtransceiver 602 together may be considered as a wirelesstransmitter/receiver system, for example.

In addition, referring to FIG. 6, a controller (or processor) 608 mayexecute software and instructions, and may provide overall control forthe smartphone, and may provide control for other systems not shown inFIG. 6, such as controlling input/output devices (e.g., display 102,keypad), and/or may execute software for one or more applications thatmay be provided on smartphone 100, such as, for example, an emailprogram, audio/video applications, a word processor, a Voice over IPapplication, or other application or software.

The smartphone may also include a memory device 606. The memory 606 mayinclude a non-transitory computer-readable storage medium. The memory606 may store instructions that, when executed, cause the smartphone 600to perform any combination of the methods, functions, and/or techniquesdescribed herein.

FIG. 7 is a network diagram showing a server 702 and client devices704A, 704B, 704C according to an example implementation. The server 702and client devices 704A, 704B, 704C can communicate with each other viaa network 700. The network 700 can include a network via which computingdevices communicate, such as a local area network, wide area network,cellular telephone network, or the Internet, as non-limiting examples.The server 702 can receive posts from client devices 704A, 704B, 704C,receive requests for posts from client devices 704A, 704B, 704C, andsend posts to the client devices 704A, 704B, 704C for presentation ondisplays of the client devices 704A, 704B, 704C. The client devices704A, 704B, 704C, which can include cellular communication devices suchas the smartphone 100 described above, tablet computing devices, laptopcomputing devices, or desktop computers, as non-limiting examples, canpresent posts to a user, receive input from the user to generate postsand/or select posts, send generated posts and/or selections to theserver 702, and present updated content, such as additional posts and/orinformation about posts, authors, and/or accounts, such as the selectedstate and/or profile card described above, based on additional contentreceived from the server 702. While certain methods, functions, and/ortechniques may be described herein with respect to either the server 702or a client device 704A, 704B, 704C, these functions, methods, and/ortechniques can be performed by either server 702 or a client device704A, 704B, 704C, or a combination of the server 702 or a client device704A, 704B, 704C in a distributed system.

FIG. 8 is a block diagram showing the server 702 according to an exampleimplementation. The server 702 can include an account maintainer 802.The account maintainer 802 can maintain, create, and/or store multipleaccounts associated with multiple users. The account maintainer 802 canstore, for example, an avatar, handle, and/or password for each account.The account maintainer 802 can also store posts and/or replies generatedand/or uploaded by users of the accounts. The account maintainer 802 canalso store other information associated with the accounts, such as datesthat the accounts were created, other accounts that the account follows,a number of other accounts that follow the account, which other accountsfollow the account, additional graphics associated with the account,and/or actions performed by the account such as indications of approvalof posts.

The server 702 can include a post receiver 804. The post receiver 804can receive and/or process posts, such as the posts 120A, 120B, 120C,320A, 320B, 320C described above, from client devices 704A, 704B, 704Cin association with user accounts. The posts received and/or processedby the post receiver 804 can include identifiers of the user accountsthat generated and/or uploaded the posts, and content, such as textand/or images, generated and/or uploaded by the user of the account. Theaccount maintainer 802 can store, in association with the account thatgenerated and/or uploaded the post and/or reply, the post and/or replyreceived and/or processed by the post receiver 804.

The server 702 can include a conversation handler 806. The conversationhandler 806 can determine which posts to include in a conversation. Theconversation handler 806 can determine to include posts in aconversation based on the posts being responsive to, and/or in reply toa root post, being responsive to, and/or in reply to, a post that isresponsive to and/or in reply to a root post, or being a root post. Theconversation handler 806 can determine which posts within a conversationthat a client device 704A, 704B, 704C should present. The conversationhandler 806 can determine which posts should be presented based, forexample, on a rating of the author of and/or account associated with thepost, a number of responses to the post, or a determination by theserver 702 that the author of and/or account associated with the post isone of two most relevant authors and/or accounts in the conversation.

The conversation handler 806 can include a relevance determiner 808. Therelevance determiner 808 can determine the two most relevant authorsand/or accounts in a conversation. The conversation handler 806 caninstruct the client devices 704A, 704B, 704C to present and/or displayonly posts by the two most relevant authors and/or accounts until a userrequests to see additional posts, such as by providing input to aprompt, such as the prompts 352A, 352B, 352C, 352D shown in FIG. 3A. Therelevance determiner 808 can determine the two most relevant authorsand/or accounts as an author and/or account of a first and/or root postin a conversation, plus an author and/or account identified in the firstand/or root post, a number of posts included in the conversation thatare associated with the two most relevant authors meeting and/orexceeding a threshold proportion of posts included in the conversation,based on a number of posts in the conversation that are associated withone of the first author and/or account or second author and/or accountand identify the other of the first author and/or account or secondauthor and/or account, based on a number of posts included in theconversation that are associated with either of the two most relevantauthors meeting or exceeded a threshold proportion of posts in theconversation, and/or a number of posts associated with either of the twomost relevant authors that are responsive to posts by the other of thetwo most relevant authors.

The server 702 can include a post sender 810. The post sender 316 cansend posts and/or replies to the client devices 704A, 704B, 704C inresponse to requests for content. The post sender 810 can send, to theclient devices 704A, 704B, 704C in response to requests for content,posts and/or replies that the server 702 determines are likely to be ofinterest to the user of the client device 704A, 704B, 704C.

The server 702 can include at least one processor 812. The at least oneprocessor 812 can execute instructions to cause the server 702 toperform any combination of functions, methods, and/or techniquesdescribed herein.

The server 702 can include at least one memory device 814. The at leastone memory device 814 can include a non-transitory computer-readablestorage medium comprising instructions stored thereon that, whenexecuted by the at least one processor 814, are configured to cause acomputing system such as the server 702 to perform any combination offunctions, methods, and/or techniques described herein.

The server 702 can include at least one input/output node 816. The atleast one input/output node 816 can include input nodes for receivinginput from a user, such as a touchscreen, microphone, buttons, akeyboard, and/or a mouse, as non-limiting examples. The at least oneinput/output node 816 can include output nodes for providing output to auser such as an administrator, such as a display and/or speaker, asnon-limiting examples. The at least input/output node 816 can includenodes for communicating with other computing devices such as the clientdevices 704A, 704B, 704C via access points and/or base stations, such aswired interfaces including an Institute for Electrical and ElectronicsEngineers (IEEE) 802.3 Ethernet Port, a High-Definition MultimediaInterface (HDMI) port, or a Universal Serial Bus (USB) port, asnon-limiting examples, and/or wireless interfaces such as IEEE 802.11Wireless Fidelity interfaces, Long-term Evolution (LTE) interfaces, orother cellular communication interfaces, as non-limiting examples.

FIG. 9 is a block diagram showing a client device 704 according to anexample implementation. The client device 704 can be an example of thesmartphone 100 and/or any of the client devices 704A, 704B, 704C.

The client device 704 can include a graphical user interface (GUI)generator 902. The GUI generator 902 can generate a GUI that presentsthe posts and/or replies, such as posts 120A, 120B, 120C, 320A, 320B,320C, 320D, 320E, and receives input such as generation of posts by theuser.

The GUI generator 902 can include a conversation handler 904 and arelevance determiner 906. The conversation handler 904 and relevancedeterminer 906 can have similar features as the conversation handler 806and relevance determiner 808 described above with respect to the server702.

The GUI generator 902 can include a post presenter 908. The postpresenter 404 can present posts, such as posts 120A, 120B, 120C, 320A,320B, 320C, 320D, 320E, to the user via the display 102. The posts thatthe post presenter 908 presents to the user can be posts that the clientdevice 704 received from the server 702.

The GUI generator 902 can include an input processor 910. The inputprocessor 910 can receive and/or process input from the user. The inputprocessor 406 can receive and/or process selections of posts and/orreplies, and/or selections and/or inputs of prompts 352A, 352B, 352C,352D. The input processor 910 can receive and/or process the selectionsof posts and/or replies by, for example, receiving and/or processing atouch contact on a portion of the display 102 presenting and/orassociated with the selected post and/or reply, the user moving a cursorand clicking on a portion of the display 102 presenting and/orassociated with the selected post and/or reply, and/or a user scrollingthrough posts and/or replies and selecting a post and/or reply by inputinto a human interface device such as tapping on the display 102,clicking on a mouse, and/or typing a specific key on a keyboard orkeypad.

The input processor 910 can receive and/or process generation of postsand/or replies by the user. The input processor 910 can receive, forexample, textual input, such as via a soft keyboard on a touchscreenincluded in the display 102, text input via a keyboard, or voice inputvia a microphone. In some examples, the input processor 910 can receiveand/or process images, such as photographs stored on the client device704 and/or captured by a camera included in the client device 704, orgraphical images generated and/or stored on the client device 704, asnon-limiting examples.

The client device 704 can include a post receiver 912. The post receiver912 can receive posts from the server 702. The posts that the clientdevice 704 receives from the server 702 can include, for example, anidentifier of the author or and/or account associated with the post, anavatar associated with the author and/or account, a name and/or handleassociated with the handle and/or account, content such as text 130and/or image 132 included in the post, and/or relationships between thepost and other posts, such as which posts the post is responsive and/orreplying to and/or which posts are responsive and/or replying to thepost.

The client device 704 can include a post sender 914. The post sender 914can send, to the server 702, posts and/or replies created and/orinputted by the user via the input processor 910 of the GUI generator902. The post sender 914 can send posts and/or replies that include anidentification of the account associated with the user who createdand/or inputted the post, as well as the content including text and/orimage(s).

The client device 704 can include at least one processor 916. The atleast one processor 916 can execute instructions to cause the clientdevice 704 to perform any combination of functions, methods, and/ortechniques described herein.

The client device 704 can include at least one memory device 918. The atleast one memory device 918 can include a non-transitorycomputer-readable storage medium comprising instructions stored thereonthat, when executed by the at least one processor 916, are configured tocause a computing system such as the client device 704 to perform anycombination of functions, methods, and/or techniques described herein.

The client device 704 can include at least one input/output node 920.The at least one input/output node 920 can include input nodes forreceiving input from a user, such as a touchscreen included in thedisplay 102, microphone, buttons, a keyboard, and/or a mouse, asnon-limiting examples. The at least one input/output node 920 caninclude output nodes for providing output to a user, such as a display102 and/or speaker, as non-limiting examples. The at least input/outputnode 920 can include nodes for communicating with other computingdevices such as the server 702 via access points and/or base stations,such as wired interfaces including an Institute for Electrical andElectronics Engineers (IEEE) 802.3 Ethernet Port, a High-DefinitionMultimedia Interface (HDMI) port, or a Universal Serial Bus (USB) port,as non-limiting examples, and/or wireless interfaces such as IEEE 802.11Wireless Fidelity interfaces, Long-term Evolution (LTE) interfaces, orother cellular communication interfaces, as non-limiting examples.

FIG. 10 is a flowchart showing a method according to an exampleimplementation. The method can include receiving posts (1002). Receivingposts (1002) can include receiving at least a first post in associationwith a first account, a second post in association with the firstaccount, the second post being associated with the first post, a thirdpost in association with a second account, the third post beingassociated with the first post, a fourth post in association with thesecond account, the fourth post being associated with the first post,and a fifth post in association with a third account, the fifth postbeing associated with the first post. The method can include determiningrelevance of accounts associated with the posts (1004). Determining therelevance of accounts associated with the posts (1004) can includedetermining that the first account and the second account are mostrelevant to a conversation, the conversation including at least thefirst post, the second post, the third post, the fourth post, and thefifth post. The method can include presenting posts (1006). Presentingposts (1006) can include, based on determining that the first accountand the second account are most relevant to the conversation, presentingthe first post, the second post, the third post, and the fourth postwithout presenting the fifth post.

According to an example, the first post can identify the second account,and the determining that the first account and the second account aremost relevant to the conversation can be based on the first postidentifying the second account.

According to an example, the determining that the first account and thesecond account are most relevant to the conversation can be based on anumber of posts included in the conversation that are associated witheither the first account or the second account meeting or exceeding athreshold proportion of posts included in the conversation.

According to an example, the determining that the first account and thesecond account are most relevant to the conversation can be based on anumber of posts included in the conversation that were either receivedin association with the first account and identify the second account orwere received in association with the second account and identify thesecond account meeting or exceeding a threshold proportion of postsincluded in the conversation.

According to an example, the determining that the first account and thesecond account are most relevant to the conversation can be based on anumber of posts included in the conversation that were either receivedin association with the first account and identify the second account orwere received in association with the second account and identify thesecond account meeting or exceeding a threshold proportion of postsreceived in association with either the first account or the secondaccount.

According to an example, the determining that the first account and thesecond account are most relevant to the conversation can be based on anumber of posts associated with the first account that are responsive toposts associated with the second account and posts associated with thesecond account that are responsive to posts associated with the firstaccount.

According to an example, the receiving the first post in associationwith the first account can include receiving a message, the messageincluding the first post and identifying the first account as an authorof the first post.

According to an example, the presenting the first post, the second post,the third post, and the fourth post without presenting the fifth postcan include presenting posts received in association with either thefirst account or the second account without presenting posts received inassociation with accounts other than the first account or the secondaccount.

According to an example, the presenting the first post, the second post,the third post, and the fourth post without presenting the fifth postcan include presenting the first post with a first color identifying thefirst account, the second post with the first color identifying thefirst account, the third post with a second color identifying the secondaccount, and the fourth post with the second color identifying thesecond account.

According to an example, the method can further include presenting aprompt to display additional posts, and, in response to receiving inputto the prompt, presenting the fifth post.

FIG. 11 is a flowchart showing a method according to another exampleimplementation. The method can include presenting a conversation view(1102). Presenting the conversation view (1102) can include presenting,within the conversation view, a first post and at least one other post,the first post including an identifier of an author of the first postand content provided by the author of the first post. The method caninclude receiving a first selection (1104). Receiving the firstselection (1104) can include receiving the first selection of the firstpost within the conversation view. The method can include presenting aselected state (1106). Presenting the selected state (1106) can include,in response to receiving the first selection of the first post withinthe conversation view, present the first post within the selected state,at least one of the identifier of the author or the content beingpresented larger in the selected state than in the conversation view.The method can include receiving a second selection (1108). Receivingthe second selection (1108) can include receiving the second selectionof the first post within the selected state. The method can includepresenting a profile card (1110). Presenting the profile card (1110) caninclude, in response to receiving the second selection of the first postwithin the selected state, presenting the profile card associated withthe author, the profile card including the identifier of the author anda description of the author.

According to an example, the method can further include processing afirst return input after presenting the profile card, and, in responseto processing the first return input, presenting the first post withinthe selected state.

According to an example the first return input can include an input intoa portion of a display that is outside the profile card.

According to an example, the method can further include processing asecond return input after presenting the first post within the selectedstate in response to processing the first return input, and afterprocessing the second return input, presenting the first post and atleast one other post in the conversation view.

According to an example, the second return input can include an inputinto a portion of a display that is presenting the content.

According to an example, the first selection can include an input into aportion of a display that is presenting the first post.

According to an example, the second selection can include an input intoa portion of a display that is presenting the identifier of the author.

According to an example, the content can include text.

According to an example, the content can include at least one image.

Implementations of the various techniques described herein may beimplemented in digital electronic circuitry, or in computer hardware,firmware, software, or in combinations of them. Implementations mayimplemented as a computer program product, i.e., a computer programtangibly embodied in an information carrier, e.g., in a machine-readablestorage device or in a propagated signal, for execution by, or tocontrol the operation of, data processing apparatus, e.g., aprogrammable processor, a computer, or multiple computers. A computerprogram, such as the computer program(s) described above, can be writtenin any form of programming language, including compiled or interpretedlanguages, and can be deployed in any form, including as a stand-aloneprogram or as a module, component, subroutine, or other unit suitablefor use in a computing environment. A computer program can be deployedto be executed on one computer or on multiple computers at one site ordistributed across multiple sites and interconnected by a communicationnetwork.

Method steps may be performed by one or more programmable processorsexecuting a computer program to perform functions by operating on inputdata and generating output. Method steps also may be performed by, andan apparatus may be implemented as, special purpose logic circuitry,e.g., an FPGA (field programmable gate array) or an ASIC(application-specific integrated circuit).

Processors suitable for the execution of a computer program include, byway of example, both general and special purpose microprocessors, andany one or more processors of any kind of digital computer. Generally, aprocessor will receive instructions and data from a read-only memory ora random access memory or both. Elements of a computer may include atleast one processor for executing instructions and one or more memorydevices for storing instructions and data. Generally, a computer alsomay include, or be operatively coupled to receive data from or transferdata to, or both, one or more mass storage devices for storing data,e.g., magnetic, magneto-optical disks, or optical disks. Informationcarriers suitable for embodying computer program instructions and datainclude all forms of non-volatile memory, including by way of examplesemiconductor memory devices, e.g., EPROM, EEPROM, and flash memorydevices; magnetic disks, e.g., internal hard disks or removable disks;magneto-optical disks; and CD-ROM and DVD-ROM disks. The processor andthe memory may be supplemented by, or incorporated in special purposelogic circuitry.

To provide for interaction with a user, implementations may beimplemented on a computer having a display device, e.g., a cathode raytube (CRT) or liquid crystal display (LCD) monitor, for displayinginformation to the user and a keyboard and a pointing device, e.g., amouse or a trackball, by which the user can provide input to thecomputer. Other kinds of devices can be used to provide for interactionwith a user as well; for example, feedback provided to the user can beany form of sensory feedback, e.g., visual feedback, auditory feedback,or tactile feedback; and input from the user can be received in anyform, including acoustic, speech, or tactile input.

Implementations may be implemented in a computing system that includes aback-end component, e.g., as a data server, or that includes amiddleware component, e.g., an application server, or that includes afront-end component, e.g., a client computer having a graphical userinterface or a Web browser through which a user can interact with animplementation, or any combination of such back-end, middleware, orfront-end components. Components may be interconnected by any form ormedium of digital data communication, e.g., a communication network.Examples of communication networks include a local area network (LAN)and a wide area network (WAN), e.g., the Internet.

While certain features of the described implementations have beenillustrated as described herein, many modifications, substitutions,changes and equivalents will now occur to those skilled in the art.

What is claimed is:
 1. A non-transitory computer-readable storage mediumcomprising instructions stored thereon that, when executed by at leastone processor, are configured to cause a computing device to: present,within a conversation view, a first post and at least one other post,the first post including an identifier of an author of the first postand content provided by the author of the first post; receive a firstselection of the first post within the conversation view; in response toreceiving the first selection of the first post within the conversationview, present the first post within a selected state, at least one ofthe identifier of the author or the content being presented larger inthe selected state than in the conversation view; receive a secondselection of the first post within the selected state; and in responseto receiving the second selection of the first post within the selectedstate, present a profile card associated with the author, the profilecard including the identifier of the author and a description of theauthor.
 2. The non-transitory computer-readable storage medium of claim1, wherein the instructions are further configured to cause thecomputing device to: process a first return input after presenting theprofile card; and in response to processing the first return input,present the first post within the selected state.
 3. The non-transitorycomputer-readable storage medium of claim 2, wherein the first returninput includes an input into a portion of a display that is outside theprofile card.
 4. The non-transitory computer-readable storage medium ofclaim 2, wherein the instructions are further configured to cause thecomputing device to: process a second return input after presenting thefirst post within the selected state in response to processing the firstreturn input; and after processing the second return input, present thefirst post and at least one other post in the conversation view.
 5. Thenon-transitory computer-readable storage medium of claim 4, wherein thesecond return input includes an input into a portion of a display thatis presenting the content.
 6. The non-transitory computer-readablestorage medium of claim 1, wherein the first selection includes an inputinto a portion of a display that is presenting the first post.
 7. Thenon-transitory computer-readable storage medium of claim 1, wherein thesecond selection includes an input into a portion of a display that ispresenting the identifier of the author.
 8. The non-transitorycomputer-readable storage medium of claim 1, wherein the contentincludes text.
 9. The non-transitory computer-readable storage medium ofclaim 1, wherein the content includes at least one image.
 10. A methodcomprising: presenting, within a conversation view, a first post and atleast one other post, the first post including an identifier of anauthor of the first post and content provided by the author of the firstpost; receiving a first selection of the first post within theconversation view; in response to receiving the first selection of thefirst post within the conversation view, presenting the first postwithin a selected state, at least one of the identifier of the author orthe content being presented larger in the selected state than in theconversation view; receiving a second selection of the first post withinthe selected state; and in response to receiving the second selection ofthe first post within the selected state, presenting a profile cardassociated with the author, the profile card including the identifier ofthe author and a description of the author.
 11. The method of claim 10,further comprising: processing a first return input after presenting theprofile card; and in response to processing the first return input,presenting the first post within the selected state.
 12. The method ofclaim 11, wherein the first return input includes an input into aportion of a display that is outside the profile card.
 13. The method ofclaim 11, further comprising: processing a second return input afterpresenting the first post within the selected state in response toprocessing the first return input; and after processing the secondreturn input, presenting the first post and at least one other post inthe conversation view.
 14. The method of claim 13, wherein the secondreturn input includes an input into a portion of a display that ispresenting the content.
 15. The method of claim 10, wherein the firstselection includes an input into a portion of a display that ispresenting the first post.
 16. The method of claim 10, wherein thesecond selection includes an input into a portion of a display that ispresenting the identifier of the author.
 17. The method of claim 10,wherein the content includes text.
 18. The method of claim 10, whereinthe content includes at least one image.
 19. An apparatus comprising: atleast one processor; and a non-transitory computer-readable storagemedium comprising instructions stored thereon that, when executed by theat least one processor, are configured to cause the apparatus to:present, within a conversation view, a first post and at least one otherpost, the first post including an identifier of an author of the firstpost and content provided by the author of the first post; receive afirst selection of the first post within the conversation view; inresponse to receiving the first selection of the first post within theconversation view, present the first post within a selected state, atleast one of the identifier of the author or the content being presentedlarger in the selected state than in the conversation view; receive asecond selection of the first post within the selected state; and inresponse to receiving the second selection of the first post within theselected state, present a profile card associated with the author, theprofile card including the identifier of the author and a description ofthe author.
 20. The apparatus of claim 19, wherein the instructions arefurther configured to cause the apparatus to: process a first returninput after presenting the profile card; and in response to processingthe first return input, present the first post within the selectedstate.